1. Field
The present invention relates generally to graphical user interfaces and more specifically to generating transparent graphics.
2. Description
In the days of "dumb" terminals and early personal computers (PCs), a user could typically view only one set of information at a time on a computer display. With the advent of windowing features of graphical user interfaces in some operating system software, a user may view multiple sets of information in multiple windows shown on the display. In some cases, the windows are overlapping, and in other cases the windows are nonoverlapping (or tiled). While the windowing capability has proven advantageous for increasing the amount of information displayed to the user on a single display, it still is limited in that when two or more windows are overlapping, the window in the foreground obscures or blocks the user's view of the overlapped portion of the window in the background. The foreground window also blocks input access to the overlapped portion of the background window. The user typically must perform some action, such as a cursor movement, keyboard input strike or mouse input event, to cause the background window to be changed to the foreground window, thereby allowing the user to fully view its contents or provide input signals to the system.
One approach to overcoming this drawback of windowing systems is to provide the capability for simultaneous viewing of the entire contents of multiple overlapping windows through the use of transparency. Transparent windows contain display data wherein objects or images beyond the transparent window (e. g., in a background window or underlying display surface) may still be perceived by the user. Transparent effects are used in some computer software games to enable features such as "heads-up" display functions.
Current implementations of transparency have at least several disadvantages. The transparent effect is typically achieved by interleaving pixels from two display buffers without the ability to adjust the level of transparency. The transparency results in windows with inferior viewing quality because the pixel interleaving method produces "checkerboard" artifacts in the display. Furthermore, the transparent effects are limited to pre-defined, self-contained components of specialized application programs. As a result, it is difficult to provide transparency for or over application programs that do not provide transparency capabilities themselves.
Therefore a need exists for the capability to provide multiple general purpose, high quality transparent display layers over the top of normal computer display windows and background surfaces.